#!/usr/bin/env python3
"""
数据库备份工具的入口文件
用于Nuitka打包，避免相对导入问题
"""

import os
import subprocess
import sys
from database_backup.cli_main import main


def setup_git_config_from_env():
    """从环境变量读取Git配置并设置Git用户信息"""
    try:
        # 从环境变量获取Git用户名和邮箱
        git_username = os.environ.get('GIT_USERNAME')
        git_email = os.environ.get('GIT_EMAIL')
        
        # 如果环境变量存在，设置Git配置
        if git_username:
            subprocess.run(['git', 'config', '--global', 'user.name', git_username], 
                         check=False, capture_output=True)
            print(f"已设置Git用户名: {git_username}")
        
        if git_email:
            subprocess.run(['git', 'config', '--global', 'user.email', git_email], 
                         check=False, capture_output=True)
            print(f"已设置Git邮箱: {git_email}")
        
        # 检查是否设置了Git配置
        if git_username or git_email:
            print("Git用户配置已从环境变量设置完成")
        
    except Exception as e:
        print(f"设置Git配置时出错: {e}")


if __name__ == "__main__":
    # 在程序启动前设置Git配置
    setup_git_config_from_env()
    
    # 执行主程序
    main()